#include <fstream>
#include <vector>
#include <cmath>

struct Point
{
	double x, y;
    Point(double _x, double _y) : x(_x), y(_y) 
	{
	}
};

struct Vector
{
	double x, y;
	
	Vector(Point p, Point q) : x(q.x - p.x), y(q.y - p.y)
	{
	}

	double vect_mult(Vector w) const
	{
		return x * w.y - y * w.x;
	}

};

int main() 
{
	const Point zero = Point(0, 0);

	std::ifstream input("in.txt");
	std::ofstream output("out.txt");

	std::vector<Point> a;
	int n = 0;
	double x, y;
	
	while (input >> x >> y) 
    {
		a.push_back(Point(x, y));
		n++;
    }

	a.push_back(a[0]);

	double result = 0;

	for (int i = 0; i < n; i++) 
	{
		result += Vector(zero, a[i]).vect_mult(Vector(zero, a[i+1]));
	}

	result /= 2;
	result = fabs(result);

	output << std::fixed << result;

	return 0;
}